perm filename PAPER.SAI[REV,MUS] blob sn#290442 filedate 1977-06-25 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00004 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	ENTRY PPSELECT, PPACTIVATE, PPPOSITION, PPSIZE, PPRELEASE, PPREFRESH, REFRESH
C00003 00003	PPSELECT PPACTIVATE PPPOSITION PPSIZE PPRELEASE PPREFRESH REFRESH
C00005 00004	END "PAPER"
C00006 ENDMK
C⊗;
ENTRY PPSELECT, PPACTIVATE, PPPOSITION, PPSIZE, PPRELEASE, PPREFRESH, REFRESH;
BEGIN "PAPER"
REQUIRE "HEADER.SAI" SOURCE_FILE;

DEFINE PPIOT='702000000000;
DEFINE AC(n)=⊂(n LAND '17) LSH 23⊃;
DEFINE PPSEL=PPIOT LOR AC(0);
DEFINE PPACT=PPIOT LOR AC(1);
DEFINE DPYPOS=PPIOT LOR AC(2);
DEFINE DPYSIZ=PPIOT LOR AC(3);
DEFINE PPREL=PPIOT LOR AC(4);
DEFINE PPINFO=PPIOT LOR AC(5);
DEFINE LEYPOS=PPIOT LOR AC(6);
DEFINE PPHLD=PPIOT LOR AC(7);

DEFINE CALLI='047000400000;
DEFINE TTYSET=CALLI LOR '400121;

DEFINE PTYUUO='711000000000;
DEFINE PTWR1S=PTYUUO LOR AC(6);
COMMENT PPSELECT PPACTIVATE PPPOSITION PPSIZE PPRELEASE PPREFRESH REFRESH;
INTERNAL PROCEDURE PPSELECT(
      INTEGER pp;
      BOOLEAN keep_map(TRUE));
START_CODE "PPSELECT"
	MOVE	1,pp;
	ANDI	1,'17;
	SKIPE	keep_map;
	IORI	1,'400000;
	PPSEL	0(1);
END        "PPSELECT";

INTERNAL PROCEDURE PPACTIVATE(
      INTEGER map);
START_CODE "PPACTIVATE"
	HRRZ	1,map;
	PPACT	0(1);
END        "PPACTIVATE";

INTERNAL PROCEDURE PPPOSITION(
      INTEGER pos);
START_CODE "DPYPOSITION"
	MOVE	1,pos;
	DPYPOS	0(1);
END        "DPYPOSITION";

INTERNAL PROCEDURE PPSIZE(
      INTEGER #glitches, #lines);
START_CODE "DPYSIZE"
	MOVE	1,#glitches;
	MOVE	2,#lines;
	ANDI	1,'777;
	ANDI	2,'777;
	LSH	1,9;
	IOR	1,2;
	DPYSIZ	(1);
END        "DPYSIZE";

INTERNAL PROCEDURE PPRELEASE(
      INTEGER piece_of_paper);
START_CODE "PPRELEASE"
	MOVE	1,piece_of_paper;
        PPREL	(1);
END        "PPRELEASE";

INTERNAL PROCEDURE PPREFRESH;
START_CODE "PPREFRESH"
	INTEGER FUNC;
	MOVSI	1,'4000;
	HRRI	1,'120; ∂ "P" ;
	MOVEM	1,FUNC;
	HRROI	1,FUNC;
	TTYSET	1,;
END        "PPREFRESH";

INTERNAL PROCEDURE REFRESH;
START_CODE "REFRESH"
LABEL ADR,SKP;
	PTWR1S	ADR;
	JFCL;
	JRST	SKP;
ADR:	0;
	'10120;
SKP:;
END        "REFRESH";

END "PAPER"